<?php
namespace app\admin\controller;
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/10/22
 * Time: 18:44
 */

/*
* 必须将 php.ini 中的 com.allow_dcom 设为 TRUE
*/
//php word转html
function php_Word($wordname,$htmlname)
{
    $url = config('word_upload_path');
    $url = str_replace('\\','/',$url);
    //$url = substr(realpath("index.php"),0,strlen(realpath("index"))-9); 获取本地文件路径
    $word = new \COM("word.application") or die("Unable to instanciate Word");

    //显示目前正在使用的Word的版本号
//     echo "Loading Word, v. {$word->Version}";

    //把它的可见性设置为0（假），如果要使它在最前端打开，使用1（真）
    $word->Visible = 0;
    //---------------------------------读取Word内容操作 START-----------------------------------------
    //打开一个word文档
    $word->Documents->Open($wordname);
//    $word->Documents->Open(realpath("2.doc"));

    //将filename.doc转换为html格式，并保存为html文件
//    $word->Documents[1]->SaveAs(dirname(__FILE__)."/".$htmlname,8);
//    echo $url.$htmlname;exit;
    $word->Documents[1]->SaveAs($url.$htmlname,8);

    //获取htm文件内容并输出到页面 (文本的样式不会丢失)
        $content = file_get_contents($url.$htmlname);
//    $content = file_get_contents(realpath("women.html"));//自已新建一个html文档
        $content = str_replace('charset=gb2312','charset=utf-8',$content);
      echo $content;

     //获取word文档内容并输出到页面（文本的原样式已丢失）
//      $content= $word->ActiveDocument->content->Text;
//    echo $content;

    //关闭与COM组件之间的连接
    $word->Documents->close(true);
    $word->Quit();
    $word = null;
    unset($word);
}
// 通过openoffice word 转 pdf
function MakePropertyValue($name,$value,$osm){
    $oStruct = $osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");
    $oStruct->Name = $name;
    $oStruct->Value = $value;
    return $oStruct;
}

function word2pdf($doc_url, $output_url)
{
//    echo $doc_url,'----',$output_url;
    //调用OpenOffice.org服务器
//    $osm = new \COM("com.sun.star.ServiceManager") or die ("Please be sure that OpenOffice.org is installed.\n");
//    //设置应用程序继续隐藏,避免闪烁的屏幕上的文档
//    $args = array(MakePropertyValue("Hidden",true,$osm));
//    //启动桌面
//    $top = $osm->createInstance("com.sun.star.frame.Desktop");
//    //加载。doc文件,从上面传递“隐藏”属性
//    $oWriterDoc = $top->loadComponentFromURL($doc_url,"_blank", 0, $args);
//    //设置参数为PDF输出
//    $export_args = array(
//        MakePropertyValue("FilterName","writer_pdf_Export",$osm)
//    );
//    //写出的PDF
//    $oWriterDoc->storeToURL($output_url,$export_args);
//    $oWriterDoc->close(true);
//    echo $doc_url,'----',$output_url;exit;
    $command = "java -jar /opt/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar $doc_url $output_url";
    $res = exec($command, $output);
    var_dump($res);
//system($command);
//    passthru($command);
}


